<template>
	<view>
	    <button @click="initialNFC">开始 NFC 识别</button>
	  </view>
</template>

<script>
export default {
  data() {
    return {
      nfcAdapter: ''
    }
  },
  onLoad(options) {
      this.initialNFC()
	},
  methods: {
    initialNFC() {
        // 获取NFC实例
        const nfc = wx.getNFCAdapter()
		this.nfcAdapter = nfc
        const _this = this
      
        nfc.startDiscovery({
          success(res) {
            console.log('NFC读取功能已开启')
            nfc.onDiscovered(_this.discoverHandler)
          },
          fail(err) {
            if (!err.errCode) {
              return console.log('微信(IOS)不支持NFC识别，请使用微信(安卓)')
            }
          }
        })
      },
	  // 监听方法，监听到NFC实例，读取卡片信息，res里就是卡片信息，不过需要转换一下
	    discoverHandler(res) {
			console.log(res, 11111)
	      const str = this.buf2hex(res.id)
	      if (str) {
			  console.log('读取到的数据', str);
	        // 这里拿到UID，可以做一点业务逻辑了
	      }
	    },
     // ArrayBuffer转16进制
      buf2hex(arrayBuffer) {
        return Array.prototype.map.call(new Uint8Array(arrayBuffer), x => ('00' + x.toString(16)).slice(-2)).join('');
      }
  }
}
</script>

<style>
/* 添加样式 */
</style>